# 直接编译出来的bin文件有时会有很大,需要我们打开
# .dis文件查看section
# 可以看到section .data的地址从ec1c 直接跳到了8e20
# 超过了4k
# 所有我们通过-Tdata来指定data段地址
cc=/home/arte/workspace/driver/tools/gcc-3.4.5-glibc-2.3.6/bin/arm-linux-gcc
ld=/home/arte/workspace/driver/tools/gcc-3.4.5-glibc-2.3.6/bin/arm-linux-ld
objcp=/home/arte/workspace/driver/tools/gcc-3.4.5-glibc-2.3.6/bin/arm-linux-objcopy
objdmp=/home/arte/workspace/driver/tools/gcc-3.4.5-glibc-2.3.6/bin/arm-linux-objdump

all:
	$(cc) -c -o led.o led.c
	$(cc) -c -o uart.o uart.c
	$(cc) -c -o lib1funcs.o lib1funcs.S
	$(cc) -c -o my_printf.o my_printf.c
	$(cc) -c -o main.o main.c
	$(cc) -c -o start.o start.S
	$(ld) -Ttext 0 -Tdata 0xe80 start.o led.o uart.o lib1funcs.o my_printf.o main.o -o uart.elf
	$(objcp) -O binary -S uart.elf uart.bin
	$(objdmp) -D uart.elf > uart.dis

clean:
	rm *.bin *.o *.elf *.dis


